const autoprefixer = require('autoprefixer')
const pxtorem = require('postcss-pxtorem')
const path = require('path')

function resolve (dir) {
  return path.join(__dirname, dir)
}

module.exports = {
  publicPath: process.env.VUE_APP_PUBLIC_PATH,
  // 每次保存时 lint 代码
  lintOnSave: process.env.NODE_ENV !== 'production',
  // 不输出为编译警告
  runtimeCompiler: true,
  // 不输出 .map 文件
  productionSourceMap: false,
  chainWebpack: config => {
    /**
     * 删除懒加载模块的 prefetch preload，降低带宽压力
     * https://cli.vuejs.org/zh/guide/html-and-static-assets.html#prefetch
     * https://cli.vuejs.org/zh/guide/html-and-static-assets.html#preload
     * 而且预渲染时生成的 prefetch 标签是 modern 版本的，低版本浏览器是不需要的
     */
    config.plugins.delete('prefetch').delete('preload')
    config.resolve.alias
      .set('@', resolve('src'))
      .set('assets', resolve('src/assets'))
    /**
     * 修改 htmlWebpackPlugin 配置中标题
     */
    config.plugin('html').tap(args => {
      args[0].title = 'vant rem适配'
      return args
    })
  },
  css: {
    loaderOptions: {
      postcss: {
        plugins: [
          autoprefixer(),
          pxtorem({
            rootValue: 37.5,
            propList: ['*']
          })
        ]
      },
      less: {}
    }
  }
}
